Data processing system



M. COHN ETAL DATA PROCESSING SYSTEM March 5, 1968 6 Sheets-Sheet 1 Filed Aug. 2, 19.65

M w i W ,{i m 8 m 5% M08. 2% 0 j w j M/ (T0 FIG. lb)

M M chm mww wm m L R E5 0 wm wn l M M M C m a l m F March 5, 1968 COHN L 3,372,377

DATA PROCESSING SYSTEM Filed Aug. 2, 1965 6 Sheets-Sheet 2 6 56}- (FROM FIG. I0)

3" GROUP H. j O 0 B7 0* J I 7 I I \3 T 1 A8 J. J I j C8 I Z 3 AMO /K|4 19 i" Q5 l4 CM I $14 53M 1 J 111 5M0 d v 3" GROUP Maud 15 1968 M. COHN ETAL 3,372,377

DATA PROCESSING SYSTEM Filed Aug. 2, 1965 6 Sheets-Sheet S 57: (3 (FROM FIG. lb)

| 4 e R TLE l A30 I I 4 GROUP #2 TV T C B30 3O I March 5, 1968 M. COHN ETAL 3,372,377

DATA PROCESSING SYSTEM Filed Aug. 2, 1965 6 Sheets-Sheet 4 I, IL NEGATOR I A| 2 0* I I March 5, 1968 M. COHN ETAL DATA PROCESSING SYSTEM Filed Aug. 2, 1965 6 Sheets-Sheet 5 OUTPUT COMPARATOR March 5, 1968 M. COHN ETAL DATA PROCESSING SYSTEM Filed Aug. 2, 1965 6 Sheets-Sheet 6 United States Patent ()tlice 3,372,377 DATA PROCESSING SYSTEM Marius Cohn and Richard Lindaman, Minneapolis, Minn., assignors to Sperry Rand Corporation, New York, N.Y., a corporation of Delaware Continuation-impart of application Ser. No. 442,448, Mar. 24, 1965. This application Aug. 2, 1965, Ser. No. 476,458

Claims. (Cl. 340-1462) This is a continuation-in-part of our copending patent application Ser. No. 442,448 Mar. 24, 1965 which is a continuation-in-part of application Ser. No. 131,281 filed Aug. 14, 1961, now abandoned.

The present invention is concerned generally with a data processing system, and more particularly with such a processing system wherein the logical operations are performed by majority-decision elements.

In data processing systems, it is frequently necessary to conduct determinations of carries, comparisons, and the like, each of these operations among others capable of being performed by a number of techniques. In order to improve the reliability, speed of operation and the like, it is generally preferable that any of these processing operations be conducted with a minimum number of components consistent with the other system requirements. Since each component in the system is subject to failure, the probability of error of the system may be reduced by reducing the number of components. In addition, the speed of operation is inversely proportional to the number of logical levels included in the system, each level contributing its own integral portion of the overall delay. In order to enhance the speed of operation, and in order to increase the overall reliability of the system, majoritydecision logic has been implemented in connection with various data processing operations including the determination of carries, comparisons, and the like. System utilizing majority-decision elements in accordance with the present invention have been found to significantly increase the speed of operation and decrease the number of components required to perform a logical determination of the particular type of interest. Economical advantages accordingly are available in connection with the system of the present invention. Systems of the present invention are adaptable for use in connection with words having almost unlimited length. The advantages of operation increase with an increase in word length.

Therefore, it is an object of the present invention to provide an improved data processing system employing majority-decision elements for performing certain logical operations.

It is a further object of the present invention to provide an improved data processing system employing majoritydecision elements for high speed carry nets and for high speed comparators.

It is yet another object of the present invention to provide a data processing system employing a minimal number of majority-decision elements to perform logical operations with a minimum number of logic levels.

Other and further objects and advantages of the present invention will become apparent to those skilled in the art upon a study of the following specification appended claims and accompanying drawings, wherein:

FIGS. 1(a), 1(b), and 1(0) form a partial logic diagram of an 11 bit carry net derived by majority-decision logic;

FIG. 2 is a logic diagram of a 4 bit high speed comparator derived by majority-decision logic;

FIG. 3 is a circuit diagram of one type of majoritydecision element which may be employed in connection with the system of the present invention;

FIG. 4 is a circuit diagram of a modified majority-de- 3,312,377 Patented Mar. 5, 1968 cision element which may be utilized in connection with the system of the present invention; and,

FIG. 5 is a logic diagram of a comparator which is adapted to perform several majority-decision logic operations depending upon the nature of the various inputs thereto.

FIG. 6 is a logic diagram of a further embodiment of a part of the network shown in FIG. 1(a).

FIG. 7 is a logic diagram of a full parallel comparator designed in accordance with the present invention.

The carry from any stage of an ordinary parallel binary adder is given by the majority of 3 bits; the addend bit and the augend bit corresponding to the particular bit stage under consideration, plus the next lower-order carry. In other words, the carry for the ith stage of such an adder may be represented by the following equation:

i 1# i i-1 (1) In this function, the characters represents a majority-decision operation. In Equation 1, C, is represented by the majority of the arguments A B and C The carry, C may be eliminated from the Equation 1 by replacing it with the function A #B #C The repetition of this process can eventually eliminate all carries so that the highest order carry is ultimately expressed entirely in terms of various addend and augend bits. If, for example, i=3 (1) becomes Equation 2, it will be observed includes four nested majon'ty expressions, this expression corresponding to a diagram including four columns of elements and therefore requiring 4 periods of operation. Thus, utilizing Equation 2 in n-logic levels, (delay times) the carries can be determined for n-bit words.

Majority-decision logic facilitates the design of networks, such as comparators, carry-determning networks and the like, which require fewer components and fewer logic levels, thus providing a corresponding increase in reliability and reduction in operating time. It has been determined that in m-logic levels (delay times) the maximum number of carries that can be generated is 2 1 and in general the number of logic levels, m, necessary to generate carries corresponding to words of order n is uniquely determined by the inequality 2 n 2 For 7 bit words A and B, for example, the method of Equation 2 would require 7 operating periods or delay times whereas the technique of the present invention permits these operations to be conducted in only three operating periods. This advantage increases rapidly with an increase in word length.

A simple majority-decision operation may be exemplified by the 3-input bistable parametron as illustrated in FIG. 4. This device has three coincident binary inputs and produces a binary output that agrees with the majority of the inputs. If at least two of the three inputs are binary Os the output of the majority-decision element is 0; and if at least two of the three inputs are binary PS the output will be 1. In addition, one of the inputs may be permanently established as a binary 1, and in this case the majority-decision element will function as an OR element relative to the 1. If the constant input is changed to a 0 the element is modified to a Z-input AND relative to the binary 1. In place of the parametron, a tunnel diode or other type of threshold device may be successfully employed as the majority-decision element, such as for for example, appropriately arranged transistor elements or the like (with suitable input network) such as is shown in FIG. 4. It is important however, that the unit function as a threshold device in order that the majority logic system may be properly designed.

In addition to greater'speed, considerably fewer components are required when majority-decision elements are employed. Time delays are used to synchronize or otherwise arrange the timing of the operation from the input portion to the output portion. To simplify the drawings, only a few delay elements are shown in FIG. 1a. Delay elements are inexpensive in comparison to majority-decision elements. The extent of the delay required will, of course, depend upon the individual components used in the system. Thus, in certain applications, specific delay elements having lengthy delay characteristics will be required, while in certain other applications, an extended length of conductor may be adequate to provide the delay necessary for coincidence.

Reference is made to FIGS. 1a, 1b and 1c of the drawings wherein an n bit carry net for determining carries corresponding to an augend and an addend, of order n, is partially shown. The carries for the first 4 bit orders are determined in 3 periods utilizing a minimum of majority-decision elements; a total of only 6 elements being utilized. It will be appreciated that the first majoritydecision element 18 is provided with an unconditional binary 0, on input line 11, thereby forming a conventional AND circuit. The output from the first majoritydecision element is fed simultaneously to the input of second and third majority-decision elements, 12 and 13, in a first group of majority logic circuits 54, the other 2 inputs to the second element being provided by the second bit stage of the individual words. In order to synchronize the input operation between the first and second majoritydecision element, a pair of delay elements 14 and 15 are interposed between the input junction for the bits A and B and the input to the majority-decision element per se. The extent of delay provided in this pair of delays will, of course, be determined by the nature of the first majority-decision element 10, considering operation speed, nature of operation, or like characteristics of this element. The input to the second bit stage of the system, in addition to being directed to the element receiving the carry from the first bit stage is directed to fourth and fifth majoritydecision elements 16 and 17 respectively, one bit of each word from the second bit stage being directed to separate elements. These fourth and fifth elements are further provided with inputs from the third bit stage, these inputs establishing the odd number of 3 inputs provided respectively to these elements. The respective outputs of the fourth and fifth majority-decision elements are directed to the input of the third majority-decision element 13, the third input being provided by the carry from the first bit stage as indicated previously. The output from the third majority-decision element 13 is carried directly as a second period operation to the input of the majority-decision element 18 in a second group of majority logic circuits 55 which is adapted to accommodate the fourth bit stage of the individual words. In order to properly synchronize the operation, the input to the fourth bit stage, A B is provided with appropriate signal delays 19, 20, 21 and 22 in order that these signals will be third period signals and arrive simultaneously at the sixth majority-decision element. Assuming a delay element may be fabricated with a time period substantially equal to the delay incurred in other portions of the circuitry, 21 pair of these delays for each input functioning substantially in serial relationship will be required. The remaining inputs in FIGS. 1(a), 1(b) and 1(a) are appropriately provided with delays (not shown) in order that each majoritydecision element may be simultaneously actuated or rendered operative. Thus, the carries for 4 stages of bits are determined utilizing 3 periods of delay and utilizing a minimum of components.

Similarly, the carries for the 7 bit orders shown in groups of majority logic circuits 54 and 55 can be determined in 3 periods of delay although as shown in FIG. 1(a), 4 delay periods are used to obtain carry pulse C FIG. 6 shows how carry pulse C may be obtained in 3 delay periods when the majority decision elements are coupled according to the equation for C shown in Table 1. FIGS. 1(a), 1(b), and 1(0) show a carry determining network for 11 bits. The function max. shows that for 4 logic levels or delays, the maximum number of carries that can be generated is 15. Therefore, since at least 5 logic levels must be used if more than 15 carries are to be determined, then the configuration shown in FIG. 1(a) can be used to save elements even though it adds a delay level to that particular group only (not to higher order succeeding groups which also have 5 or more delay levels). Similarly, carry bits C C C C etc., could each be obtained in one less logic or delay level but since, as shown in FIGS. 1(a), 1(b), and 1(0), each of these circuits uses less elements with no increase in total system delay time, the particular configuration shown is most desirable.

This design calculus for the arrangement of FIGS. 1(a), 1(b), and 1(c) is formulated in detail in our article entitled Axiomatic Majority-Decision Logic, IRE Transactions on Electronic Computers; vol. EC-10, No. 1, March 1961.

A set of working theorems for manipulating majority logic expressions may be derived, these theorems providing a basis for the following identity:

A complete carry net for n=24 is set forth below and shown diagrammatically in FIGS. 1(a), 1(b), and 1(c). This device is represented by the Equations 4, 5 and 6.

Using Equations 4 and and substituting i=2, the following identity is formed:

This manipulation must be performed repeatedly for arbitrarily long words. The carry net of FIGS. 1(a), 1(b), and 1(0) requires 3 periods to determine the carries for 4 bit words. As indicated previously, the 4 bit word length merely provides a convenient illustration and 3 periods of operation may determine carries for words up to 7 bits in length while 4 periods include bit Words and 5 periods include 31 bit words. It will be appreciated that a substantial reduction in majority-decision elements has been accomplished utilizing the design of FIGS. 1(a), 1(b) and 1(0). This reduction may, in certain cases, require the addition of a number of delay elements. As indicated previously, these delay elements are generally modest in cost. This is particularly true in high speed circuitry applications.

Thus, it will be seen that the network shown in FIGS. 1(a), 1(b), and 1(0) generates signals representative of carries C C C C corresponding to an augend of the form A A; A A and an addent of the form B B B B and comprises a group of terminals for receiving the signals representing the respective order operand digits (A B,, (A E (A ,B (A B including a zeroth group for generating C A first group of majority logic circuits 54 coupled to said receiving terminals and responsive to a first group of 2 lower order operands (A ,B (A 3 in said lower order group and of C generated by a zeroth group, a second group of majority logic circuits 55 coupled to said receiving terminals and responsive to a second group of 4 higher order operands (A ,B (A ,B from said receiving terminals and the output C of the highest order carry digit determining circuit (13, 16 and 17) in the respective preceding group 54 for determining 4 carries for said second group of higher order operand pulses as a function of only the operand digits (A ,B (A ,B in said second group of operands and the highest order carry digit (C determined in said first group of carry determining circuits 54, and an N th group of majority logic circuits coupled to said receiving terminals and responsive to an N th group of 2 higher order operands from said terminals and the output of the highest order carry digit determining circuit in the respective preceding group for determining 2 carries for said N th group of higher order operands as a function of only the operand digits in said 'N th group of operands and the highest order cary digit determined in said respective preceding group N of carry determining circuits wherein N,-=0, 2 N-l. Further, it can 'be seen that for the ith group, N =m l the maximum number of carries that can be generated, is given by where m; is the number of delay levels in the ith group. For instance, in group one which has 2 delay levels and, thus, m :2, the number of carries is 2. Similarly in group two which has 3 delay levels (as optimized and shown is FIG. 6) and m =3, the number of carriers is 4. Also, group 3 which has 4 delay levels (provided the circuits for producing C C and C are modified as shown above for C and m =4, the number of carries is 8. Further, it is readily apparent that for a given word length, n, a full carry generator must generate n carries. The number of logic levels m necessary to generate n carries is given by log (n+1) 'when (n+1) is an integral power of 2 and log (rs-I-l) rounded to the next higher integer when (n+1) is not an integral power of two. The total number of groups, N, necessary to generate It carries is just equal to m. Hence, for word length n the number of groups necessary is given by The number of carries N-2 is 2 and they are ua -4) a -1 The number of carries generated by the last group N =N-2 is generated by any group N =0 C Ni the latter being representative of the highest digit order carry generated by the next lower order carry generating group N In each of the groups N =0, 1, 2, N-2 the highest order carry generated by N, is a function only of the augend and addend orders received by N and the highest order carry generated by the next preceding group N The highest order carry generated by N, is given by:

P 1 P P P q q2 Q q ag A fig B and 0 The number of logic levels needed to generated is N;+l. Given this minimum number of logic levels the precise manner in which are generated is not critical to this invention so long as they are generated in no more than N logic levels. It is preferable to generate these carries with a minimum of majority logic elements. In the last group, N :1, the highest order carry generated is C,, If n1=2 2 the C -1 cg -L last group is full and carries C C are generated as in any other group. If n-l 2 2 the last group is not full and C,, C are generated in no more that N logic levels utilizing a minimum number of majority logic elements.

Consider group three, in which case N =3. Then, 2(2 -1)=14 and the highest order carry generated by group three is C According to Equation 10,

l 14 =l #l 14 #14 These expressions may be verified by observing the group shown in FIG. 1b for generating C It is easily seen that 1x and 8 are functions only of (A A and (B B thereby indicating that C is a function Only of C6, (A7 A14), and (B7 B14)- Referring now to FIG. 2, a comparator circuit using majority-decision elements is illustrated, this circuit being based upon the identical logic structure as utilized in the carry net of FIGS. 1a, 1b and 10. In order to appropriately operate as a comparator, one of the word inputs must be negated throughout the system, such as for example, the B input. Furthermore, since specific carries for comparisons are not utilized in this circuit, at least one of the majority-decision elements may be omitted. In addition, delay elements to provide coincident output will not be required; however, means to provide simultaneous inputs to various components of the system will be retained. The comparator as shown in FIG. 2 will, if X is a 0, give a 1 output for A B and a 0 output for A B. If X is a 1, the comparator will give a 1 output for A B and a 0 output for A B. If the output of the comparator is negated and applied as a feed back signal in place of the X signal, an interesting effect is produced. If the individual inputs A and B are continuously applied, the output becomes an alternating series, for example, 0101 for A=B. This arrangement does not affect the operation of the comparator for the situation where A does not equal B. The result is that all 3 of the possible conditions, A B, A B and A=B can be completely distinguished in 2 periods of operation. The majority-logic comparator as illustrated in FIG. 2 is adapted to compare two multibit numbers A and B, where A and B are unsigned numbers in normal binary code and the comparison is of magnitude only. If A and B are signed numbers and are to be compared algebraically, they cannot be in normal binary code and the comparator must be altered accordingly. If, for example, A and B are in either of the binary notations commonly used to represent signed numbers in digital computers (onescomplement or twos-complement), the comparator design may be altered by reversing the negation (or lack thereof) at two inputs; the most significant bit of A and the most significant bit of B. Since both normal and complemented inputs are assumed to be available, this change leaves the remaining structure of the comparator unchanged. A modification may be incorporated into the comparator shown in FIG. 2 for use as either a continuous sensing system, or for use in alternate operating cycles capable of determining whether A B or A B. If the alternate cycle system is employed wherein X :0 in one cycle and X=1 in the next operating cycle, the individual result from one cycle may be stored until the next cycle in a conventional flip-flop system or the like. Thus, the condition of word values of A being greater than B and the condition of A being equal to B may be resolved separately in succeeding cycles, and by the process of elimination the possibility of B being greater than A may also be resolved.

Similarly, the device shown in FIGS. 1a, lb, and 10 may be used as a comparator by complementing either all B inputs or all A inputs to the system. Then a comparison through the jth digit order, K of A and B may be obtained at any desired output representing a carry in FIGS. la, 1b, and 1c. The number of groups N necessary to generate K is given by 2 j 2 Each group N =0 N-2 receives as input signal representations of digit orders -D Z -Iy FQNL-I) :B z t-1 and a comparison signal K the latter being representative of a comparison through the 2 2 digit order and generates signals representative of K where in N +1 logic levels. The highest order comparison generated by N, is given by:

i is.-. 3555..-. Ki -t where N +1. Given this minimum number of logic levels the precise manner in which are generated is not critical to this invention so long as they are generated in less than N +1 logic levels. It is preferable to generate these comparisons with a minimum of majority logic elements. In the last group, N =N-l, the highest order comparison generated is K If n1=2 2 the last group is full and comparisons K K are generated as in any other group. If n 2 -2 the last group is not full and K K are generated in no more than N logic levels utilizing a minimum number of majority logic elements. If the comparison is not to be made at outputs C C C C etc., all majority logic elements used only to form these outputs may be omitted. Thus when j 2(2 -1) only 2(2 -1) need be generated by N Hence, element 12 (C element 18 (C element 58 (C etc. may be omitted, if no comparison is to be made at these outputs.

Reference is made to FIG. 5 of the drawings for a specific illustration of such a system using majoritydecision logic. In this arrangement, the comparator block generally designated 50 is provided with a plurality of individual inputs including an A word input, B word input and an X input, the B word input being negated throughout the system. The comparator 50 may, of course, be the comparator as illustrated in detail in FIG. 2. The output of the comparator 50 is carried to a pair of individual majority-decision logic elements 51 and 52, this result being negated in the case of one of the logic elements. In addition, a Y input and a negated 1 input is provided to the elements 51 and 52. The output of the majority-decision elements 51 and 52 is carried to third element 53 together with an unconditional 1 input. The output derived from this system is set forth in the following: If

X =0 and Y=O, then output is A B X =1 and Y: 0, then output is A B X =0 and Y: 1, then output is BZA X=1 and Y: 1, then output is B A Referring to FIG. 7 of the drawings a full parallel comparator, for seven bit words A and B is shown. The numeral 107 generally indicates a comparator constructed in accordance with the embodiment shown in FIG. 2, and can be constructed from the carry generator of FIG. 1(a) by eliminating elements which do not contribute to the output, as explained above. By adding three elements, a partial comparator of the type shown in FIG. 2 may be converted to a full comparator. Elements 10', 13, and 100' are coupled in a manner similar to elements 10, 13 and 100 to provide, simultaneously, outputs corresponding to condition A B and A B. In general, a partial comparator of the type shown in FIG. 2 can be modified to give a full comparator by the addition of N elements where each of the N additional elements generate signals in accordance with:

As shown in FIG. 7, K is representative of the condition A B and K is representative of the condition A B. From these two conditions the remaining three conditions can be realized as follows:

In the event n is such that the last group is not full K and K' are generated in accordance with the generation of C as set forth above.

Referring now to the transistor controlled majoritydecision circuit described in FIG. 3, it will be observed that the system generally designated 50 includes a transistor 51 having a plurality of substantially matched inputs at 52 and having a group of outputs at 53. A germanium clamping diode is provided in the output in order to control the magnitude of the output, independent of the number of active inputs. The majority element utilizes a going pulse signal as representative of a binary 1, with a ground input being representative of a binary 0. Since the output from this system is inverted from the input, a suitable additional inverter may be employed if inversion at the output is not desired. In the operation, an input pulse is applied at the input 52, one input being insufiicient in magnitude to cause transistor 51 to conduct. The magnitude of two or more pulses are, on the other hand, capable of starting the transistor into conduction, this conduction in turn, being represented by an inverted pulse occurring in the output so long as a majority of binary ls are being represented at the input. Regarding orders of magnitude, the value of V is in the range of about 4 volts, V is in the range of about -2 volts, and

V is of the order of 4 volts. For proper operation, it is essential that V be lower in magnitude than V The input resistors R R and R are preferably in the range of about 500 ohms, R is preferably about 50 ohms and R is preferably about 400 ohms. This circuitry arrange ment is suitable for performing appropriate majority-decision logic determinations.

Referring to FIG. 4 of the drawing, a parametric oscillator generally designated 38 is shown, the system including a pair of laminated or ferrite cores 39 and 40. Windings 41, 42, 43 and 44 are provided as illustrated in the drawing. Windings' 41 and 42 are in series and in series and in phase, while windings 43 and 44 are counterwound and according provide signals to the cores which are out of phase. Windings 43 and 44 along with a capacitor 48 comprise a resonant circuit having a normal resonant circuit frequency 1. Since windings 43 and 44 are arranged in counter-phase relationship, a system balance is maintained which avoids direct coupling of the initial excited current to the resonant current. A source of excitation current 46 having a normal frequency 2]", and a direct current course such as the battery 47 is provided in order to operate the cores 39 and 40 at a point of permeability which provides a maximum variation of the magnetization of the cores relative to the level of the excitation current source. When the excitation current at frequency 2 is supplied to the windings 41 and 42, the resonant circuit including windings 43 and 44 and capacitor 48 oscillates in a subharmonic frequency of the order of one-half of the excitation frequency, this frequency being conveniently designated 7. The resonant oscillation is of relatively low intensity, and this oscillation is of a frequency f. The sources 46 and 47 provide what is commonly termed the pumping current to the parametron network. One or more signal sources are provided at 49, each of these having a frequency 2 and being arranged to be connected to the resonant circuit. When the signal source is energized, the amplitude of current in the resonant circuit increases rapidly until an upper limit is reached, and from this point on the oscillation is maintained at a stable level. The phase of the oscillation occurring in the resonant circuit is either at a certain given phase representative of a binary 1 or at a phase which shifted by 1r radians, this phase representing a binary 0. The phases of oscillation cannot be other than one or the other. It will be appreciated, of course, that a single core parametron may be suitably utilized in place of the dual core network shown and described herein. Thin film cores may also be advantageously utilized.

Applying this arrangement to a majority-decision system, a binary 1 will be represented in the phase of the output only when a majority of the input signals must represent a binary 1 in order to have the output to be so constituted. In the same fashion, a signal representing a binary 0 will occur in the output only when a majority of the input signal to the parametron network represent a binary 0. This apparatus is readily adaptable for installation in a system such as is illustrated in FIGS. 1, 2, and 5.

It will be appreciated that the various specific embodiments as described herein are provided for purposes of illustration only and accordingly there is no intention of limiting the scope of the data processing system of the present invention to these specific embodiments alone. It will be further appreciated that those persons skilled in the art may make certain modifications without departing from the spirit and scope of the present invention.

What is claimed is:

1. A carry generator, for generating n signals C C C C representative of carries corresponding to an augend of the form A A A A and an addend of the form B B B B comprising:

N carry generating groups N =0 N-1, where N is defined by the relation 2 n 2 for generating signal representations of C,, C C C each of said carry generating groups N N 2, coupled to the next lower carry generating group, for generating 2 signals representative of corresponding to digit orders of said augend and digit orders 2(2 i) B2N1 of said addend, comprising;

input means for receiving signal representations of digit orders Aru -1) z -n M H) z i and carry signal the latter being representative of the highest digit order carry generated by the next lower carry generating group, and

means coupled to said input means for utilizing said digit order and carry signals to generate signals representative of Cg -3 cz L- and to generate a signal representative of m -n in accordance with the function,

. N; Ni N 2(2 -r)= r-u flQQNLl) CQNLZ said carry generating group N =N-l, coupled to the next lower carry generating group, for generating signals representative of carries C responding to digit orders A,, augend and digit orders B C cor- A of said B of said addend,

comprising;

input means for receiving signal representations of digit OI'dCI'S A 1 A2N 1 1, B 1 B2N 1 1, and

carry signal C the latter being representative of the highest digit order carry generated by the next lower carry generating group, and

means coupled to said input means for utilizing said digit order and carry signals to generate signals representative of C C and to generate a signal representative of C in no more than N logic levels if n1 2 -2 and in accordance with the function,

if n1=2 -2. 2. A carry generator as defined in claim 1 in which said signal representations of N1=0 N2, and C 2 C and ir-2' 2' 1 are generated utilizing a minimum number of majority logic elements.

4. A carry generator, for generating n signals C C C C when n is of the form 2 1, representative of carries corresponding to an augend of the form A A A A and an addend of the form B B B B, comprising;

N carry generating groups N =O N-l, for generating signal representations of C C CICO,

each of said carry generating groups N =0 N l, coupled to the next lower carry generating group, for generating 2 signals representative of signals of 2(2 W-i corresponding to digit orders z(2 1) z -i of said augend and digit orders of said addend, comprising,

input means for receiving signal representations of digit orders said digit order and carry signals to generate signals representative of in no more than N logic levels and to generate a signal representative of 2(2 1) in accordance with the function,

2(2 1)= g{iq $13 z -z in N +1 logic levels. 5. A carry generating group N 1, 2, crating 2 signals representative of for genzo -i) 2 1 corresponding to digit orders of an augend of the form A digit orders Aim-1 .A .A A and m -i) a -1 of an addend of the form B B prising;

input means for receiving signal representations of digit orders B B comthe latter being representative of the highest digit order carry generated by a next lower carry generating group, and

means coupled to said input means for utilizing said digit order and carry signals to generate signals representative of Cg 3 C L and to generate a signa l fepresentative of z(2 -1) in accordance with the function,

ew -Faith 1353 ca -2 6. A carry generating group as defined in claim 5 in which said generating means comprises a network of majority logic elements arranged such that ua -1) is generated in N +1 logic levels.

7. A signal generating group N =l, 2, for generating at least one signal ua -1) corresponding to digit orders 2(2 i) 2(2 1) of two words of the form A A A A A and B B B 3 comprising;

input means for receiving signal representations of digit orders which said generating means comprises a network of majority logic elements arranged such that is generated in N +l logic levels.

9. A comparator for generating n signals K K K K representative of comparisons through the ith digit order of two words A and B of the form A,, A A A and E E i' fi comprismg:

N signal generating groups N =0 N1, where N is defined by the relation 2 n 2 for generating signal representations of K,, K

1K0 each of said signal generating groups N=0 N-2,

coupled to the next lower signal generating group, for generating?" signals representative of corresponding to digit orders 2(2 1) 2*1 and m -n a -1 of words A and B comprising;

input means for receiving signal representations of digit orders 2(2"'*1) z n ea -1) 2 i and comparison signal the latter being representative of the highest digit order comparison generated by the next lower group, and

means coupled to said input means for utilizing said digit order and comparison signals to generate signals representative of K2NH'L-3 Kg L- and to generate a signal representative of in accordance with the function,

N" i 2(2 *l) 2 2 N; -1) flgggN KQNLZ said signal generating group N =N1, coupled to the next lower signal generating group, for generating N-2 n- 2 2 N =0 signals representative of carries K K corresponding to digit orders A A and E input means for receiving signal representations of digit F of said words A and B, comprising;

orders A A2N 1 1, F 1 E2N 1 and comparison signal K the latter being representative of the highest digit order comparison generated by the next lower carry generating group, and means coupled to said input means for utilizing said digit order and carry signals to generate signals representative of K K and to generate a signal representative of K in no more than N logic levels if n1 2 -2 and in accordance with the function,

coupled to the next lower signal generating group, for generating a signal 2(2 representative of a comparison through the digit order of A and B, comprising;

input means for receiving signal representations the latter being representative of the comparison generated by the next lower group, and

means coupled to said input means for utilizing said digit order and comparison signals to generate a signal representative of K2(2NL1) in accordance with the function, 2(2 1)= x, sign Ki -2 said signal generating group N =Nl coupled 'to the next lower signal generating grou for generating K comprising;

input means for receiving signal representations Of A A2N 1, B 2N 1 1, and K the latter being representative of the comparison generated by the next lower group, and means coupled to said input means for utilizing said digit order and comparison signals to generate a signal representation of K in no more 15 than N logic levels if n-1 2 -2 and in accordance with the function,

if n1=2 -2. 11. A comparator as defined in claim 10 in which each of said groups N N-1 Comprises a network of majority logic elements arranged such that signal representations of K,- are generated in N +l logic levels when j n1 and said signal representation of K is generated in N logic levels.

12. A comparator, for generating 2N signals K and K, representative of comparisons through the jth digit order of two words of the form A A, A A and 'fi 3 comprising:

N signal generating groups N =0 N l, where N is defined by the relation 2 n 2 for generating signal representations of K, and K3,

each of said signal generating groups N =0 N 2 coupled to the next lower signal generating group, for generating two signals said signal generating group N,=N-l coupled to tne next lower signal generating group, for generating K,, and K' comprising;

input means for receiving signal representations 0f A 1 A2N 1 1, B 1 B2N 1 2, K and K the latter two signal representations being representative of the comparison generated by the next group, and

means coupled to said input means for utilizing said digit order and comparison signals to generate two signals representative of K,, and K',, in no more than N logic levels if 16 and in accordance with the functions,

it-1 61: figii 2"' 2 K -1=0t1; 515C129? K2 l2 i-f n1=2 2.

13. A comparator as defined in claim 12 in which each of said groups N =0 N 1 comprises a network of majority logic elements arranged such that signal representations of K and K, are generated in N +l logic levels when j nl and said signal representations of K,, and K,, are generated in N logic levels.

14. A signal generating group N =1, 2, for generating at least two signals and corresponding to digit orders A2( 1) and 2(2"l1) of two Words of the form A A A A and B,, B B B comprising;

input means for receiving signal representations of digit orders A N A n B u B n and signals K2N| 2 and :K 2 i -2 the latter two being the highest order signals generated by a next lower generating group, and

means coupled to said input means for utilizing said input signals to generate signals are generated in N +l logic levels.

- References Cited Knoebel, R. A.: Anticipated Carry Majority Logic Mode. Bedford, Mass. The Mitre Corporation, Prepared under Contract AF 33 (600) 239852, Project 708, April 1963. Copy available through Defense Documentation Center for Scientific and Technical Information, Cameron Station, Alexandria, Va., catalogued as AD 407560 Copy available in Group 240. 340/ 146.2.

' MALCOLM A. MORRISON, Primary Examiner.

ROBERT C. BAILEY, Examiner.

M. A. LERNER, M. J. SPIVAK, v. SIBER,

Assistant Examiners.

UNITED STATES PATENT OFFICE CERTIFICATE OF CORRECTION Patent No. 3,372,377 March 5, 1968 Marius Cohn et a1.

It is hereby certified that error appears in the above numbered patent requiring correction and that the said Letters Patent should read as corrected below.

Column 11, lines 40 and 51, "C 1", each occurrence,

should read C N-l lines 41 and 45, "A each occurrence, should read A N-l lines 42 and 45, "B each occurrence, should read B Nl line 46, "C should read C N-l line 62, "C should read C N-l same column 11, line 75, "C N +l should read C N '+l column 12, line 10, "B B should read B B line 16, cancel "of signals"; line 19, "C N should read --;-li1'1 Should read H 1 l n A N 1 11ne 45, a B should read N N- B 1 column 13, line 5 l 2 2 1 2 2 1 2 z i-1) i i i 6 N. should read a N B N line 19,

"A A .A A should read A A A line 20 "B should read B line 24, "A N should read 27, C2 (2Ni 1) N- N- line 35, "a 1 N B 1 N 2 (2 i 2 (Z l Ni B 0 N 1 62 d 6 a lnes an 7 C N should read N D ...B N l", each occurrence, should read N- N- B N- .B N- column 14 11ne 9 1 1 z (2 i-l) 2 (2 il) N. N. should read a 1 N B 1 N line 16, "K

should read K Nl line 17, "A should read A Nl line 18, cancel "input means for receiving signal representations of digit" and insert the s ame after "comprising;" in line 19; lines 19, 20 and 69, "B

each occurrence, should read N-l line 20, A2N l l 4S, K2(2Ni 1) should read K N same column 14, line 69, "A should read A N-l column 15, line 7, "N O" should read N =O line 30, 3 N should read E N l, K N 2, line 45, "K N 2" should read K N 2 line 52 "B Nl should read Nl same column 15 line 55, after "next" insert lower column 16, line 5,

N-l N-l 1 "a should read a same line 5, "#K N- should read K N-l line 15, "K N 1 should read I I I K N l line 18, 'A N l should read A N I line 23, "A N should read A N same column 16, line 38, "#K N should read K N Signed and sealed this 11th day of November 1969.

(SEAL) Attest:

EDWARD M.FLETCHER,JR. WILLIAM E. SCHUYLER, JR.

Attesting Officer Commissioner of Patents 

1. A CARRY GENERATOR, FOR GENERATING N SIGNALS CN-1 ... C1 ... C1CO, REPRESENTATIVE OF CARRIES CORRESPONDING TO AN AUGEND OF THE FORM AN-1 ... A1 ... A1AO AND AN ADDEND OF THE FORM, BN-1 ... B1 ... B1BO, COMPRISING; N CARRY GENERATING GROUPS N1=0 ... N-1, WHERE N IS DEFINED BY THE RELATION 2N=1$N<2N, FOR GENERATING SIGNAL REPRESENTATIONS OF CN-1 ... C1 ... C1CO, EACH OF SAID CARRY GENERATING GROUPS N1=0 ... N-2, COUPLED TO THE NEXT LOWER CARRY GENERATING GROUP, FOR GENERATING 2N1 SIGNALS REPRESENTATIVE OF 